package cn.jingyuan.owl.dao.core;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;

/**
 * @author Chen Jingyuan
 * @since 2022-12-05 21:02
 */
public interface MyBatisPlusCrudDao<E, ID> extends CrudDao<E, ID> {

    /**
     * 使用 {@link LambdaUpdateWrapper} 进行更新
     *
     * @param updateWrapper
     *
     * @return 更新条数
     *
     * @see com.baomidou.mybatisplus.core.mapper.BaseMapper#update(Object, Wrapper)
     */
    int update(LambdaUpdateWrapper updateWrapper);

    /**
     * 使用 {@link LambdaUpdateWrapper} 进行更新
     *
     * @param e {@link E}
     * @param updateWrapper {@link LambdaUpdateWrapper}
     *
     * @return 更新条数
     *
     * @see com.baomidou.mybatisplus.core.mapper.BaseMapper#update(Object, Wrapper)
     */
    int update(E e, LambdaUpdateWrapper updateWrapper);

}
